iT邦幫忙

0

【程式開發筆記】輕大風險,開放網路軟體安全計畫 (OWASP TOP 10) - 大漠國渡

  • 分享至 

  • xImage
  •  

圖文並茂的詳細內容至自個人部落格 : 【程式開發筆記】輕大風險,開放網路軟體安全計畫 (OWASP TOP 10) - 大漠國渡 鬆了解網站安全10

前言

近日開發新的系統,即將要系統上線,程式碼需要做系統安全弱點掃描,確保上線後,不會輕易的被駭客攻破,在此期間做了許多的功課,學習如何透過工具掃描,以及排除問題,因此想再做筆記,並分享給有需要的人。

接下來我會分三個步驟分享

第一步,我了解先 OWASP TOP 10 是甚麼?
第二步,我使用開源軟體 SonarQube 進行源碼檢測,找出系統是否有符合 OWASP TOP 10 項目,以及其它弱點。
第三步,參考 SonarQube 檢測後,提供的修正方式,進行修正。

開放網路軟體安全計畫

開放網路軟體安全計畫,簡稱 OWASP (Open Web Application Security Project),是一個開放社群、非營利性組織提出的計畫。

而 OWASP TOP 10 為其中一項計劃,此計畫會統計駭客每 3 - 5 年中最常使用的攻擊手法前 10 名,因此只要避開前 10 名,系統相對的就更安全。

攻擊手法前 10 名平均 3 - 5 年會更新一次,也就是說可能會有新的攻擊方式,需要開發者持續關注。

接下來將以 2021 年發布的 OWASP TOP 10 進行說明。

十大網路應用系統安全弱點 (OWASP TOP 10)

(一)、A1 Broken Access Control (權限控制失效)

是指使用者權限管理失當,比方說系統一般使用者,不應該看到系統者管理的相關功能,或者是沒有任何權限的管理。

(二)、A2 Cryptographic Failures (加密機制失效)

對於網站來說是指資料傳輸未經加密,簡單說就是未使用 TLS 加密連線。

(三)、A3 Injection (注入式攻擊)

駭客可以透過特定資料形式,改變系統指令,造成系統無法正常執行,甚至可能洩漏重要資訊。

(四)、A4 Insecure Design (不安全設計)

是指設計者撰寫程式時邏輯錯誤,可能造成使用者可以繞過系統檢核,以不合格的條件「申請資料」或「取得優惠」...等。

(五)、A5 Security Misconfiguration (安全設定缺陷)

是指安全性上設定不良,比方說密碼長度、複雜度皆未要求,使用者可以以非常簡短的密碼申請帳號((如:1234),對駭客來說可以非常輕易地竊取該帳號資料。

(六)、A6 Vulnerable and Outdated Components (危險或過舊的元件)

開發程式不會所有的程式都是自己撰寫的,會使用他人開發的套件貨元件,如果是過舊的元件可能有漏洞,但在新版本的套件或元件上是有修復的,所以建議不要使用過舊的套件或元件。

(七)、A7 Identification and Authentication Failures (認證及驗證機制失效)

為了資訊安全,登入系統時,除了帳號密碼驗證外,可能還會做手機驗證。

(八)、A8 Software and Data Integrity Failures (軟體及資料完整性失效)

如果你設計的系統裡面留了一個後門功能,那你的整的系統其實就暴露了相當大的風險,是不完整的,就算其他部分驗證機制在強大,仍是不安全的。

(九)、A9 Security Logging and Monitoring Failures (資安記錄及監控失效)

是指系統有做資安記錄及監控,但是沒有人是察看監控及資料紀錄,就算系統有發出警示,也沒有人即時處理或立即的防範,讓駭客可以持續攻破,意味著資安記錄及監控失效。

(十)、A10 Server-Side Request Forgery (SSRF) (伺服端請求偽造)

假設你的系統架構中,有區分內網、外網,其他外網的部分對外防護相當強大,但是外網連線內網的部分,沒有設置防護,駭客是有辦法假裝是外網伺服器發起的請求攻擊內網伺服器的。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言